springboot+mybatis+oracle+druid入门原来很简单 您所在的位置:网站首页 druid springboot配置oracle springboot+mybatis+oracle+druid入门原来很简单

springboot+mybatis+oracle+druid入门原来很简单

2023-11-01 10:03| 来源: 网络整理| 查看: 265

一 前言

看了好多网上文章大概都是使用jdbc,jpa,连接oracle,感觉真心不是很友好,故知识追寻者在这边提供了一篇较为简单的配置方式,以供初学者学习!本篇文章主要是讲如何使用mybatis+oracle+springboot+druid集成,实现简单的查询,会查询当然其他操作很简单,入门级!

二 pom.xml

依赖文件引入oracle.ojdbc6驱动可以在maven中央仓库直接下载到, mybatis-boot-start用于配置mybatis, start-test用于测试,druid连接池。

org.springframework.boot spring-boot-starter-parent 2.1.1.RELEASE com.oracle ojdbc6 11.2.0.3 org.springframework.boot spring-boot-starter-web org.mybatis.spring.boot mybatis-spring-boot-starter 2.1.1 org.springframework.boot spring-boot-starter-test test com.alibaba druid-spring-boot-starter 1.1.10 三 mapper

mapper全类名需要与四节的sql映射器的命名空间对应

@Repository @Mapper public interface AddresseeSupervisionMapper { List getAddresseeSupervision(); } 四 sql映射器

sql 的映射文件在resource 目录下的子目录 mapper中;由于数据库数据量很大这边使用 行号 rownum 限制查第一条数据。

select * from sp_addressee_supervision where rownum=1 五 启动类

启动类@SpringBootApplication表示springboot的应用。

@SpringBootApplication public class App { public static void main(String[] args) { SpringApplication.run(App.class,args); } } 六 application.yml

druid数据源配置如下,注意测试的sql语句 SELECT 1 FROM DUAL 不能写 select 1 , 因为 oracle有虚表的说法。通常的mysql没有。mybtis的classpath配置路径就是第四节mapper文件位置,通配符*表示匹配所有。配置文件中的Ip地址,用户名,密码根据读者自行配置。

spring: #数据库配置 datasource: driverClassName: oracle.jdbc.driver.OracleDriver url: jdbc:oracle:thin:@ip:1521:orcl username: password: druid: #初始化连接大小 initial-size: 3 #最小空闲连接数 min-idle: 2 #最大连接数 max-active: 20 validationQuery: SELECT 1 FROM DUAL filters: stat test-while-idle: true test-on-borrow: true test-on-return: false max-wait: 30000 timeBetweenEvictionRunsMillis: 60000 minEvictableIdleTimeMillis: 30000 mybatis: mapper-locations: classpath:mapper/*.xml configuration: call-setters-on-nulls: true map-underscore-to-camel-case: true 七 测试

注意点是要在类上加@Component注解,表示spring的组件类,在spring IOC 容器启动时会扫描注入,否则mapper注入时会报空异常。

@SpringBootTest @RunWith(SpringRunner.class) @Component public class AppTest { @Autowired AddresseeSupervisionMapper addresseeSupervisionMapper; @Test public void test(){ System.out.println(addresseeSupervisionMapper.getAddresseeSupervision()); } } 八 执行结果

数据不方便展示,只查询一条结果如下

[{ADDRESSEE_CD=ff808081413fe46701413fe9206a0015, IS_ADD=1, DECLARAN..................


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有